// Package domain
/**
* @Project : geektime-basic-go-study
* @File    : user.go
* @IDE     : GoLand
* @Author  : Tvux
* @Date    : 2024/9/5 13:04
**/

package domain

import "time"

// domain 用于存储领域对象

// User 领域对象，是 DDD 中的 entity
// BO（Business Object）
// domain.User 是业务概念，它不一定和数据库表中或列完全对应的上。
// 而 dao.User 则是直接映射到表里面的
type User struct {
	Id       int64
	Email    string
	Password string
	Phone    string
	Nickname string
	Birthday time.Time
	AboutMe  string
	// 这里最好不要直接使用组合，因为将来可能要引入钉钉或者别的登录手段，然后他们也有相同的字段名，比如什么OpenId
	WechatInfo WechatUserInfo
}
